import {
  IKanbanState,
  IKanbanSwimlane,
  IKanbanGroupState,
} from '@ibiz-template/runtime';

export interface IOdooSwimlaneKanbanGroupState extends IKanbanGroupState {
  /**
   * @description 是否隐藏
   * @type {boolean}
   * @memberof IOdooSwimlaneKanbanGroupState
   */
  hidden?: boolean;
}

export interface IOdooKanbanSwimlane extends IKanbanSwimlane {
  /**
   * @description 代码表数据
   * @type {IData}
   * @memberof IOdooKanbanSwimlane
   */
  data?: IData;
}

/**
 * @description odoo泳道看板UI状态
 * @export
 * @interface IOdooSwimlaneKanbanState
 * @extends {IKanbanState}
 */
export interface IOdooSwimlaneKanbanState extends IKanbanState {
  /**
   * @description 活动数据
   * @type {IData[]}
   * @memberof IOdooSwimlaneKanbanState
   */
  activities: IData[];

  /**
   * @description 分组
   * @type {(IOdooSwimlaneKanbanGroupState[])}
   * @memberof IOdooSwimlaneKanbanState
   */
  groups: IOdooSwimlaneKanbanGroupState[];

  /**
   * @description 泳道数据集合
   * @type {IOdooKanbanSwimlane[]}
   * @memberof IOdooSwimlaneKanbanState
   */
  swimlanes: IOdooKanbanSwimlane[];
}
